/*
使用Antd@4 使用 dayjs 替代 moment方案
https://github.com/xiaohuoni/antd4-use-dayjs-replace-moment

暂时不需要安装moment有点大
默认语言为 en-US，所以如果需要使用其他语言，推荐在入口文件全局设置 locale
import moment from "moment"
import "moment/locale/zh-cn"
moment.locale("zh-cn")
*/

import { createLogger } from "redux-logger"
import { message } from "antd"

// dva 简单配置
export const dva = {
  config: {
    onAction: createLogger(),
    onError(e: any) {
      message.error("dva->onError:", e.message)
    },
    onStateChange(obj: any) {
      console.log("store持久化专用事件：", obj)
      window.localStorage.setItem("store", JSON.stringify(obj.index))
    },
  },
}

/*
  这个app.js 作用是运行时候要触发的所有事件
  里面可以使用环境变量process.env.envType
*/

/* 1.覆写 render,比如用于渲染之前做权限校验 这里暂不处理
import { history } from 'umi';
export function render(oldRender:any) {
  fetch('/api/auth').then((auth) => {
    if (auth) {
        oldRender()
    }else {
      history.push('/login');
      oldRender()
    }
  });
} */

/*
2.这个是用来作改变全局路由，相对于vue的动态添加路由，这里暂不做动态路由
export function patchRoutes(obj:any){
   const { routes } = obj;
   console.log(555,routes);
   let routes2=routes.find((i:any)=>{
      return i.path=='/'
   });
   routes2.routes.push(
      {
          path:'/foo',
          title:'菜单4',
          name:'菜单4',
          component:require('@/pages/aa').default
      }
   );

} */

/* 相当于vue里面的全局路由守卫用
export function onRouteChange(obj) {
  const { location, routes, action } =obj;
}
*/
